//
// Created by gogoqiu on 2021/8/24.
//

#ifndef WXTEST_INPUTDIALOG_H
#define WXTEST_INPUTDIALOG_H

//(*Headers(wxtestDialog)
#include <wx/dialog.h>
#include <wx/sizer.h>
#include <wx/button.h>
#include <wx/statline.h>
#include <wx/stattext.h>
#include <wx/textctrl.h>
#include <wx/listbox.h>
#include "../data/Preference.h"
//*)

/*
 * bool wxsOK = true;
    wxInitAllImageHandlers();
    if ( wxsOK )
    {
    	wxtestDialog Dlg(0);
    	SetTopWindow(&Dlg);
    	Dlg.ShowModal();
    	wxsOK = false;
    }
 */
class InputDialog: public wxDialog
{
public:
    //string key, string value
    InputDialog(wxWindow* parent, PreferenceView *preferenceView,
    wxWindowID id = -1);
    virtual ~InputDialog();

private:
    void buildView();
    PreferenceView *preferenceView;
    //(*Handlers(wxtestDialog)
    void OnQuit(wxCommandEvent& event);
    void OnAbout(wxCommandEvent& event);
    void OnOk(wxMouseEvent& event);
    void OnCancel(wxMouseEvent& event);
    void OnInit(wxInitDialogEvent& event);
    //*)

    //(*Identifiers(wxtestDialog)
    static const long ID_TEXT_TITLE;
    static const long ID_TEXT_VALUE;
    static const long ID_BUTTON_OK;
    static const long ID_BUTTON_CANCEL;
    static const long ID_LISTBOX1;
    static const long ID_TEXTCTRL1;

    //*)

    //(*Declarations(wxtestDialog)
    /*
    wxListBox* ListBox1;
    wxButton* Button1;
    wxButton* Button2;
    wxBoxSizer* BoxSizer2;
    wxStaticText* StaticText1;
    wxStaticLine* StaticLine1;
    wxTextCtrl* TextCtrl1;
    wxBoxSizer* BoxSizer1;*/
    //*)
    wxStaticText *titleCtrl;
    wxTextCtrl *valueCtrl, *statusCtrl;
    wxBoxSizer *BoxSizer2 ;//= new wxBoxSizer(wxHORIZONTAL);
    wxBoxSizer *baseSizer;
    wxButton *ok;
    wxButton *cancel;
    wxPanel * m_panel;
DECLARE_EVENT_TABLE()
};


#endif //WXTEST_INPUTDIALOG_H
